The IMSL_SP_BDPDSOL function solves a symmetric positive definite system of linear equations Ax = b in band symmetric storage mode. Using keywords, any of several related computations can be performed.
Note: This routine requires an IDL Analyst license. For more information, contact your Exelis VIS sales or technical support representative.
The IMSL_SP_BDPDSOL function solves a system of linear algebraic equations with a symmetric positive definite band coefficient matrix A. It computes the RTR Cholesky factorization of A. R is an upper triangular band matrix.
The L1 condition number of A is computed using Higham’s modifications to Hager’s method, as given in Higham (1988). If the estimated condition number is greater than 1/ε (where ε is the machine precision), a warning message is issued. This indicates that very small changes in A may produce large changes in the solution x.
The IMSL_SP_BDPDSOL function fails if any submatrix of R is not positive definite or if R has a zero diagonal element. These errors occur only if A is very close to a singular matrix or to a matrix which is not positive definite.
The IMSL_SP_BDPDSOL function is partially based on the LINPACK subroutines CPBFA and SPBSL; see Dongarra et al. (1979).
Solve a system of linear equations Ax = b, where:
n = 4L
ncoda = 2L
a = DBLARR((ncoda+1)*n)
a(0:n-1) = [0, 0, -1, 1]
a(n:2L*n-1) = [0, 0, 2, -1]
a(2L*n:*) = [2, 4, 7, 3]
; Define A in band symmetric storage mode.
b = [6, -11, -11, 19]
x = IMSL_SP_BDPDSOL(b, ncoda, a)
; Compute the solution
PM, x
4.0000000
-6.0000000
2.0000000
9.0000000
Result =IMSL_SP_BDPDSOL(b, ncoda [, a] [, CONDITION=variable] [, /DOUBLE] [, FACTOR=array])
A one-dimensional array containing the solution of the linear system Ax = b.
One-dimensional matrix containing the right-hand side.
Number of upper codiagonals in a.
(Optional) Array of size (ncoda + 1) x n containing the n x n banded coefficient matrix in band symmetric storage mode A(i, j). See “Band Storage Format” for a description of band symmetric storage mode.
Named variable into which an estimate of the L1 condition number is stored. This keyword cannot be used if a previously computed factorization is specified with the keyword FACTOR.
If present and nonzero, double precision is used.
An array of size (ncoda + 1) x N_ELEMENTS(b) containing the RTR factorization of A in band symmetric storage mode, as returned from IMSL_SP_BDPDFAC.
|
6.4 |
Introduced |
IMSL_SP_BDFAC, IMSL_SP_BDPDFAC